package com.wei.czz.framework.admin.controller;

import com.wei.czz.common.annotation.AuthLogin;
import com.wei.czz.common.annotation.Resubmit;
import com.wei.czz.framework.admin.manager.UserManager;
import lombok.AllArgsConstructor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;

import com.wei.czz.common.tool.Result;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2023-03-30 16:44:48
 * className: UserContactFlowController 用户联系方式记录请求接口类
 * version: 1.0
 * description:
 */
@RestController
@RequestMapping("/user-contact-flow")
@AllArgsConstructor
public class UserContactFlowController {

    private static final Logger log = LoggerFactory.getLogger(UserContactFlowController.class);

    private final UserManager userManager;

    /**
     * 用户解绑手机号接口
     * <p>
     * 调用方：
     *  1、浏览器-后台管理页-个人中心调用
     * <p>
     * 此接口会校验是否重复提交
     * @return 结果
     */
    @Resubmit(message = "解绑手机号")
    @PostMapping("/unbind/phone")
    @AuthLogin
    public Result<Object> unbindPhone() {
        log.info("开始用户解绑手机号业务");

        userManager.unbindPhone();

        log.info("用户解绑手机号业务结束");
        return Result.success();
    }

    /**
     * 用户解绑邮箱接口
     * <p>
     * 调用方：
     *  1、浏览器-后台管理页-个人中心调用
     * <p>
     * 此接口会校验是否重复提交
     * @return 结果
     */
    @Resubmit(message = "解绑邮箱")
    @PostMapping("/unbind/email")
    @AuthLogin
    public Result<Object> unbindEmail() {
        log.info("开始用户解绑邮箱号业务");

        userManager.unbindEmail();

        log.info("用户解绑邮箱号业务结束");
        return Result.success();
    }

}
